<?php

/**
 * eVoucher actions.
 *
 * @package    movilRedcol
 * @subpackage eVoucher
 * @author     Your name here
 * @version    SVN: $Id: actions.class.php 23810 2009-11-12 11:07:44Z Kris.Wallsmith $
 */
class valeRetiroActions extends sfActions
{
 /**
  * Executes index action
  *
  * @param sfRequest $request A request object
  */
    
  public function preExecute() 
  {
     $usuarioActual = $this->getUser()->getAttribute(sfConfig::get('app_name_session'),null);
     if($usuarioActual==null)
     {
          $this->redirect('@logInAuthenticationEVoucher');  
     }
  }


  

  public function executeIngreso(sfWebRequest $request)
  {
     $this->usuarioActual  = $this->getUser()->getAttribute(sfConfig::get('app_name_session'));
      $serviceEvoucher = new eVoucherClass();
      $lista = $this->getUser()->getFlash('s_lista',null);
      if($lista==null)
      {
           $arrayResutaldo  =  $serviceEvoucher->obtenerListaTarjetas("DEBIT");
           if($arrayResutaldo['success'])
           {
               $this->getUser()->setFlash('s_lista', $arrayResutaldo['object']);
           }       
           else /* Aca solo reviso que tipo de error se puedo haber provocado*/
           {
               /* si es el tipo error de que la cookie ya expiro, cierro la session en la
                * aplicacion y lo redirijo al inicio
                */

               /******************FALTA IMPLEMENTAR LOGICA****************/
           }  
  }
  }
  public function executeObtenerListaTarjetasCrear(sfWebRequest $request)
  {

              $eVoucherService = new eVoucherClass();
              /*Uso el parametro < RECHARGE >, segun lo especificado en la documentacion. */
              $arrayResutaldo  =  $eVoucherService->obtenerListaTarjetas("DEBIT");
              /*si es correcto creo la session flah*/
              if($arrayResutaldo['success']){
                  $this->getUser()->setFlash('s_lista', $arrayResutaldo['object']);
              }
              else /* Aca solo reviso que tipo de error se puedo haber provocado*/
                  {
                      /* si es el tipo error de que la cookie ya expiro, cierro la session en la
                       * aplicacion y lo redirijo al inicio
                       */

                      /******************FALTA IMPLEMENTAR LOGICA****************/
                  }

              $this->redirect('@vale_retiro_busqueda');
    }

  public function executeProducto(sfWebRequest $request)
  {
      $idCard = $request->getParameter('cardNumber');
      $name  = $request->getParameter('name');

      $eVoucherService = new eVoucherClass();
      $arrayResutaldo  =  $eVoucherService->obtenerListaProducto($idCard, "DEBIT");
      $obtengoListaProducto = null;
      if($arrayResutaldo['success'])
      {
         $obtengoListaProducto=  $arrayResutaldo['object'];
      }

      $this->listaProducto  = $obtengoListaProducto;
      $this->cardNumber = $idCard;
      $this->name = $name;
      $this->usuarioActual = $this->getUser()->getAttribute(sfConfig::get('app_name_session'));
  }

    public function executeCantidad(sfWebRequest $request)
  {
      $idCard       = $request->getParameter('cardNumber');
      $name         = $request->getParameter('cardholderName');
      $producto     = $request->getParameter('producto');
      $serviceId     = $request->getParameter('serviceId');


      $this->cardNumber = $idCard;
      $this->serviceId  = $serviceId;
      $this->producto   = $producto;
      $this->name       = $name;
      $this->usuarioActual = $this->getUser()->getAttribute(sfConfig::get('app_name_session'));
  }

    public function executeConfirmacion(sfWebRequest $request)
  {

      $this->forward404Unless($request->isMethod('post'));
      $idCard       =   $request->getParameter('cardNumber');
      $producto     =   $request->getParameter('producto');
      $serviceId    =   $request->getParameter('serviceId');
      $name         =   $request->getParameter('name');
      $cantidad     =   $request->getParameter('cantidad');
      $this->idCard         =  $idCard;
      $this->producto       =  $producto;
      $this->serviceId      =  $serviceId;
      $this->name           =  $name;
      $this->cantidad       =  $cantidad;
      $this->usuarioActual  =  $this->getUser()->getAttribute(sfConfig::get('app_name_session'));

  }


  public function executeGenerateEvoucherDebit(sfWebRequest $request)
  {
      $this->forward404Unless($request->isMethod('post'));
      $idCard       =   $request->getParameter('cardNumber');
      $cantidad     =   $request->getParameter('cantidad');
      $serviceId    =   $request->getParameter('serviceId');
      $tipo_vale="DEBIT";
      $serviceEvoucher = new eVoucherClass();
      $arrayResutaldo  =  $serviceEvoucher->generateEvoucher($idCard, $serviceId, $cantidad,$tipo_vale);

      if(!$arrayResutaldo['success'])
      {
          $this->getUser()->setFlash('sf_errorCreate', $arrayResutaldo['object']);
      }
      $this->redirect('@responseDebit');
  }

  public function executeMensajeconfir(sfWebRequest $request)
  {
     $this->usuarioActual = $this->getUser()->getAttribute(sfConfig::get('app_name_session'));
  }


}
